草庐IT

PHP json 编码和 JS JSON.stringify

全部标签

php - 使用 PHP Guzzle HTTP 6 发送带有已编码数据的 JSON

我正在尝试发送一个POST请求,其中包含带有以下header的原始JSON字符串:Content-Type:application/json。通过查看文档,我可以看到我可以做这样的事情......$data=['x'=>1,'y'=>2,'z'=>3];$client=new\GuzzleHttp\Client($guzzleConfig);$options=['json'=>$data,];$client->post('http://example.com',$options);我的问题是,当我到达这一点时,$data已经被json_encode了。我已经尝试了以下但它不起作用。$d

php - PHP如何判断浏览器POST请求数据中的字符编码?

当浏览器在POST请求的主体中发送数据时(即来自表单元素的name=value对),PHP如何确定字符编码以便正确地将位流解码为内部使用的字符?我可以理解一些PHP不需要解码的任务,例如对于SQLINSERT查询,它可能只是将数据/字符串传递给DBMS,无需额外处理。但是对于文本处理/正则表达式操作,我想PHP需要将位流解码为字符,然后才能对它们执行测试、模式匹配等。此外,由于编码是由浏览器决定的,PHP需要浏览器指导它使用什么字符集对POST数据进行编码。期望这个指导会出现在请求header中,我设置了一个文本表单在包含表单的网页的头部,然后在输入一些值并提交表单后,请求header

php - Amazon SQS 字符编码问题

我正在尝试在AmazonSQS的消息正文中插入ä、á、ó、í、â等字符。但是这些字符会转换为SQS中的其他一些字符(例如ä)。有没有办法解决这个问题。谢谢 最佳答案 这可能是由于您的代码中存在字符编码问题。关于此主题的一篇强烈推荐的文章是Joel的TheAbsoluteMinimumEverySoftwareDeveloperAbsolutely,PositivelyMustKnowAboutUnicodeandCharacterSets(NoExcuses!).看起来您的字符在某处被UTF-8编码,并且相应的UTF-8解码操作没

php - 内容编码错误

我有一个带有gzip的页面,在我的php索引文件中有ob_start('ob_gzhandler');[HTTP_ACCEPT_ENCODING]具有gzip、deflate值,甚至我在某些刷新情况下收到关于编码的错误。在htacces中,我添加了php_valuezlib.output_compressionOff什么也没有。知道如何解决这个问题吗?谢谢。 最佳答案 可能是一个短时间的修复,但这对我有用,这样我至少可以看到该网站。转到“关于:配置”在过滤器类型编码中。寻找“network.http.accept-encoding”

PHP DOMDocument nodeValue 转储文字 UTF-8 字符而不是编码

我遇到了类似于thisquestion的问题:nodeValuefromDomDocumentreturningweirdcharactersinPHP我发现的根本原因可以用mb_convert_encoding()模拟在我的单元测试中,这终于捕获了问题:$test=mb_convert_encoding('é',"UTF-8");$this->assertTrue(mb_check_encoding($test,'UTF-8'),'dataisUTF-8');$this->assertTrue($this->rw->checkEncoding($test,'UTF-8'),'data

php - 为什么两个相同编码的词在 htmlentities 中看起来不同?

我有一个关于UTF-8和htmlentities的问题。我有两个带有希腊文本的变量,它们似乎都是UTF-8编码的(根据mb_detect_encoding())。当我输出这两个变量时,它们在浏览器中(也在源代码中)看起来完全一样。当我意识到一个简单的if($var1==$var2)总是失败时,我感到很惊讶,尽管它们看起来完全一样。所以我用htmlentities看html代码会不会一样。当我看到第一个变量看起来像这样时,我很惊讶:Ï�Ï�Ï�Ï¿Ï�而另一个像这样:ια&ro;。具有相同编码(UTF-8)的两个相同单词怎么可能仍然不同呢?我该如何解决这个问题?

java - Android 应用的 JSON 编码数据

我正在尝试将JSON数据从php脚本发送到Android应用程序,但php脚本的输出与Java应用程序的预期不同。$data['sample']['txt']="helloworld";echojson_encode($data)//{"sample":{"txt":"helloworld"}}//aboveisincorrect,need{sample:[{txt:"helloworld"}]}不正确的格式导致以下Java异常:org.json.JSONException:Value{"txt":"helloworld"}atsampleoftypeorg.json.JSONObje

php - 未声明 HTML 文档的字符编码 codeigniter

我的CodeIgniter应用开始出现异常错误:ThecharacterencodingoftheHTMLdocumentwasnotdeclared.ThedocumentwillrenderwithgarbledtextinsomebrowserconfigurationsifthedocumentcontainscharactersfromoutsidetheUS-ASCIIrange.Thecharacterencodingofthepagemustbedeclaredinthedocumentorinthetransferprotocol.在第一次访问时,页面显示正常,只是一

php - PHP 会处理 $_GET 和 $_POST 中变量的字符编码吗? (PHP 5.4)

我的脚本是用UTF-8编写的,它使用的MySQL数据库表的排序规则是utf8_unicode_ci。现在,如果我想将$_GET/$_POST中的字符串与脚本/数据库中的“内部”字符串进行比较,甚至将某些内容放入数据库中,我是否必须检查/修复变量的编码还是PHP已经为我做了?如果是前者,我是否可以在脚本开头简单地执行以下操作?functioninputToUtf8($string){$detectedEncoding=mb_detect_encoding($string,'UTF-8,ISO-8859-1',true);if($detectedEncoding=='UTF-8'){ret

php - 通过 PHP COM 读取 Excel 文件时出现编码问题

我正在使用PHPCOM实用程序读取excel电子表格,一切正常,除了Excel文件中的一些单元格具有不同的语言数据。当我通过PHPCom读取这些数据时,它显示为????????$ExlApp=newCOM("Excel.Application");$workbook=$ExlApp->Workbooks->Open('f:\dev\htdocs\excel\testfile.xlsx');$worksheet=$workbook->worksheets(1);$done=false;$row_index=1;while($done==false){$english=$worksheet